package com.key.modules.service;

import com.key.common.base.RespResult;
import com.key.modules.dto.CarrierAddDTO;
import com.key.modules.dto.CarrierEditDTO;
import com.key.modules.vo.CarrierDetailsVO;

/**
* @author wei
* @description 针对表【carrier(承运商表)】的数据库操作Service
* @createDate 2023-03-23 19:31:49
*/
public interface CarrierService {
    /**
     * 查询承运商表（支持条件查询）
     * @author wei
     * @param currentPage 当前页
     * @param pageSize 页的大小
     * @param cName 承运商名称（条件查询时的可选参数）
     * @param cType 类型（条件查询时的可选参数）
     * @param cRegisteredTime 注册时间（条件查询时的可选参数）
     * @return
     */
    RespResult findCarrierList(Integer currentPage, Integer pageSize,
                               String cName, String cType, String cRegisteredTime);

    /**
     * 查询承运商详情
     * @author wei
     * @param cId 承运商ID
     * @return
     */
    CarrierDetailsVO findCarrierDetails(Integer cId);

    /**
     * 承运商新增
     * @author wei
     * @param carrierAddDTO 新增承运商时需要填写的参数
     * @return
     */
    boolean addCarrier(CarrierAddDTO carrierAddDTO);

    /**
     * 承运商删除
     * @author wei
     * @param cId 承运商ID
     * @return
     */
    boolean removeCarrier(Integer cId);

    /**
     * 承运商修改
     * @author wei
     * @param carrierEditDTO 修改承运商时需要填写的参数
     * @return
     */
    boolean editCarrier(CarrierEditDTO carrierEditDTO);

}
